Skip to content

Prove the site is ours, with a file rather than a tag - #63

Merged
temoki merged 1 commit into
mainfrom
site/search-console
Aug 27, 2026
Merged

Prove the site is ours, with a file rather than a tag#63
temoki merged 1 commit into
mainfrom
site/search-console

Conversation

@temoki

@temoki temoki commented Aug 27, 2026

Copy link
Copy Markdown
Owner

The landing page does not turn up in a search, and the first question was
whether the site was blocking crawlers. It is not: no robots.txt at either
level (the project path and temoki.github.io both 404), no noindex, no
X-Robots-Tag from GitHub Pages, public repository, 200 OK. It has simply
never been registered anywhere, so there is no way to see what Google thinks
of it and no way to ask for it to be indexed.

Google Search Console needs proof of ownership before it will report on a
property. A domain property is not available — that wants DNS for github.io
— so this is a URL-prefix property for https://temoki.github.io/TortoiseBlocks/,
and the proof is the file added here.

Why the file and not the <meta name="google-site-verification"> tag.
Both are offered and both work. But the tag would live in the landing page's
<head>, which is rewritten every release — 1.1.0 alone moved the title, the
OG description and the feature list — and a single unexplained line in there is
what a rewrite drops in silence. Search Console re-checks periodically and
un-verifies when the proof stops answering, so the failure would show up as
reports that quietly stopped. A file nothing links to survives all of that and
is in nobody's way. Its opacity is the one real cost, so release/SKILL.md
now says what it is and that it must not be tidied, renamed or wrapped in HTML:
the check reads the contents, and the filename has to match what is inside.

This has to be deployed before the check is run. pages.yml is
workflow_dispatch only, so merging does not publish it; the sequence is
merge, run the workflow against main, confirm the URL answers, and only then
press verify in Search Console. main's site/ is byte-identical to what is
serving right now, so that deploy publishes this file and nothing else — no
release timing is involved.

The rest of what the search turned up (no sitemap.xml, no canonical, and
the Japanese half of the page hidden from a JavaScript-rendering crawler
because the language is negotiated from navigator.languages and there is no
crawlable ?lang=ja URL) is a separate change. A sitemap cannot be submitted
until the property is verified anyway, so it follows this rather than riding
with it.

Google Search Console will not report on a property it cannot verify, and
the site has never been registered — which is also why there is no way to
ask for the landing page to be indexed.

The proof is a file at the site root rather than a meta tag in the landing
page's head. Both are offered and both work, but the head is rewritten every
release, and a tag living there is the kind of thing a rewrite drops in
silence; Search Console re-checks periodically and un-verifies when the
proof stops answering. A file nothing links to is not in anyone's way.

It only counts once it is live, and pages.yml deploys on dispatch only, so
this has to be merged and deployed before the check is run. main's site/ is
byte-identical to what is serving now, so that deploy publishes this file
and nothing else.
@temoki
temoki merged commit d0d5e3d into main Aug 27, 2026
7 checks passed
@temoki
temoki deleted the site/search-console branch August 27, 2026 11:10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant